//
// Created by yyancy on 2019/11/1.
//
#include <stdio.h>
#include <stdlib.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <unistd.h>
#include <string.h>


void error_handling(char *string) {
//    fputs(string, stderr);
//    fputc('\n', stderr);
    perror(string);
    exit(1);
}

int Socket(int __domain, int __type, int __protocol) {
    int sock;
    if ((sock = socket(__domain, __type, __protocol)) == -1) {
        error_handling("socket() error");
    }
    return sock;
}

int Bind(int __fd, __CONST_SOCKADDR_ARG __addr, socklen_t __len) {
    if (bind(__fd, __addr, __len) == -1) {
        error_handling("bind() error");
    }
    return __fd;
}

int Listen(int __fd, int __n) {
    if (listen(__fd, __n) == -1) {
        error_handling("listen() error");
    }
    return __fd;
}

int Connect(int __fd, __CONST_SOCKADDR_ARG __addr, socklen_t __len) {

    if (connect(__fd, __addr, __len) == -1) {
        error_handling("bind() error");
    }
    return __fd;
}


